package com.qf.controller;

import com.qf.pojo.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * @author fy
 * @version V1.0
 * @Project workspace
 * @Package com.qf.controller
 * @Description:
 * @Date 2022/6/15 0:43
 */

//@RestController写在类上，标明这是一个controller类，交给spring容器管理，并且这个类下的所有方法返回的返回值
//都会被自动转换成json格式的字符串（前提是这个controller泪下的所有返回值都要转换成json格式）

@Controller
@RequestMapping("/json")
public class JsonController {

    /**
     *
     * @return
     */
    @RequestMapping("/toJsp")
    public String toJsonDemo(){
        return "jsonDemo";
    }

    /**
     * @RequestBody注解可以将接收到的json格式字符串自定转换成java对象
     * @ResponseBody注解可以将controller方法的返回值自动转换成json格式字符串返回
     * @param user
     */
    @RequestMapping("/test1")
    @ResponseBody
    public User test1(@RequestBody User user){
        System.out.println("==============="+user);
        //返回user对象，返回的这个java对象通过@ResponseBody注解转换成json格式字符串返回给页面
        //然后ajax回调打印日志，console.log()
        return user;
    }

    /**
     * 测试异常处理器是否好用
     * @return
     */
    @RequestMapping("/error")
    public String testError(){
        System.out.println("--------测试异常处理器是否好用---------");
//        int i =1/0;
        return "hello";
    }
}
